/* 初始化执行的方法 */
function init() {
    autoParenHeight();
    gotoLayuiTable();
    setTitle()
}

/* 根据当前窗口的高度设置iframe的高度 */
function autoParenHeight() {
    if (myIframe = window.frameElement) (ClientRect = document.getElementsByTagName('body')[0].getBoundingClientRect(),
        myIframe.height = ClientRect.height + 20)
}

/* 当点击面板的header时，将当前页面在新的标签栏中打开 */
function gotoLayuiTable() {
    document.getElementsByClassName('layui-card-header')[0].onclick = function () {
        top.layui &&
            top.layui.index &&
            top.layui.index.openTabsPage &&
            top.layui.index.openTabsPage(location.href, decodeURIComponent(getSearchToJson(location.href).name)) ||
            window.open(location.href, decodeURIComponent(getSearchToJson(location.href).name));
    }
}

/* 给浏览器的标签设置标题 */
function setTitle() {
    document.getElementsByTagName("title")[0].innerText = decodeURIComponent(getSearchToJson(location.href).name)
}

/** 
 *  循环配置页，用于在每一个大的菜单块的index.html页面中循环列出对应的所有子项
 * @views 引用配置文件
*/
function foreachConfigPage(views) {
    let target = location.href.split('/')[location.href.split('/').length - 2];  // 用于标识总的图集是那个对象。
    views.forEach(function (item, key) {
        if (item.id == target) {
            let baseIframe = document.getElementById('baseIframe')
            for (let index = 1, datas = item.items; index < datas.length; index++) {
                var cloneNode = baseIframe.cloneNode();
                if (typeof datas[index] == 'string')
                    cloneNode.src = './' + datas[index].split('/')[3];
                else
                    cloneNode.src = './' + datas[index].href.split('/')[3];
                cloneNode.setAttribute('data-src', cloneNode.src)

                document.getElementById('box').appendChild(cloneNode)
            };
            baseIframe.remove()
        }
    })
}

/**
 * 将url解析成json队形
 * @url 如果有不是从location对象中获取的url，可以使用url参数传入url的字符串。
 * 返回一个json对象：
 *  url_：基础的请求地址，没有参数。
 *  其他参数，以键值对形式。
 **/
function getSearchToJson(url) {
    var obj = {}
    var urlAll = url ? url : decodeURIComponent(location.search);
    var urlArr = urlAll.split("?")
    obj['url_'] = urlArr[0];
    if (urlArr.length !== 2) return obj;

    var searchArr = urlArr[1].split("&");
    for (let index = 0; index < searchArr.length; index++) {
        var s_ = searchArr[index].split("=");
        obj[s_[0]] = s_[1]
    }
    return obj;
}